/* This file was generated automatically by the Snowball to ISO C compiler */
/* http://snowballstem.org/ */

#include "../runtime/header.h"

static int r_CONSONANT(struct SN_env * z);
#ifdef __cplusplus
extern "C" {
#endif
extern int hindi_UTF_8_stem(struct SN_env * z);
#ifdef __cplusplus
}
#endif
#ifdef __cplusplus
extern "C" {
#endif


extern struct SN_env * hindi_UTF_8_create_env(void);
extern void hindi_UTF_8_close_env(struct SN_env * z);


#ifdef __cplusplus
}
#endif
static const symbol s_0_0[3] = { 0xE0, 0xA5, 0x80 };
static const symbol s_0_1[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_2[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_3[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_4[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_5[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_6[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_7[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_8[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_9[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_10[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_11[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_12[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_13[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_14[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_15[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_16[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
static const symbol s_0_17[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_18[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_19[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_20[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
static const symbol s_0_21[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
static const symbol s_0_22[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
static const symbol s_0_23[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x81 };
static const symbol s_0_24[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_25[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_26[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_27[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_28[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
static const symbol s_0_29[3] = { 0xE0, 0xA5, 0x81 };
static const symbol s_0_30[6] = { 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_31[9] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_32[12] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_33[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_34[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
static const symbol s_0_35[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_36[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_37[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
static const symbol s_0_38[6] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82 };
static const symbol s_0_39[6] = { 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_40[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_41[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
static const symbol s_0_42[6] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_43[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_44[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_45[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_46[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
static const symbol s_0_47[6] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_48[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_49[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_50[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_51[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_52[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_53[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_54[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_55[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
static const symbol s_0_56[6] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_57[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_58[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_59[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_60[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_61[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_62[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_63[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_64[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
static const symbol s_0_65[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_66[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_67[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_68[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_69[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
static const symbol s_0_70[3] = { 0xE0, 0xA5, 0x82 };
static const symbol s_0_71[3] = { 0xE0, 0xA4, 0x85 };
static const symbol s_0_72[3] = { 0xE0, 0xA4, 0x86 };
static const symbol s_0_73[3] = { 0xE0, 0xA4, 0x87 };
static const symbol s_0_74[3] = { 0xE0, 0xA5, 0x87 };
static const symbol s_0_75[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_76[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_77[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_78[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_79[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_80[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_81[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_82[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
static const symbol s_0_83[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_84[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_85[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_86[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
static const symbol s_0_87[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_88[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_89[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_90[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
static const symbol s_0_91[3] = { 0xE0, 0xA4, 0x88 };
static const symbol s_0_92[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88 };
static const symbol s_0_93[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88 };
static const symbol s_0_94[3] = { 0xE0, 0xA4, 0x89 };
static const symbol s_0_95[3] = { 0xE0, 0xA4, 0x8A };
static const symbol s_0_96[3] = { 0xE0, 0xA5, 0x8B };
static const symbol s_0_97[3] = { 0xE0, 0xA5, 0x8D };
static const symbol s_0_98[3] = { 0xE0, 0xA4, 0x8F };
static const symbol s_0_99[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F };
static const symbol s_0_100[6] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_101[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_102[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
static const symbol s_0_103[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F };
static const symbol s_0_104[6] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F };
static const symbol s_0_105[3] = { 0xE0, 0xA4, 0x93 };
static const symbol s_0_106[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93 };
static const symbol s_0_107[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93 };
static const symbol s_0_108[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_109[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_110[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_111[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
static const symbol s_0_112[3] = { 0xE0, 0xA4, 0xBE };
static const symbol s_0_113[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_114[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_115[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_116[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_117[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_118[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_119[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_120[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
static const symbol s_0_121[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_122[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_123[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_124[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
static const symbol s_0_125[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_126[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_127[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_128[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
static const symbol s_0_129[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
static const symbol s_0_130[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
static const symbol s_0_131[3] = { 0xE0, 0xA4, 0xBF };

static const struct among a_0[132] =
{
/*  0 */ { 3, s_0_0, -1, -1, 0},
/*  1 */ { 12, s_0_1, 0, -1, 0},
/*  2 */ { 12, s_0_2, 0, -1, 0},
/*  3 */ { 12, s_0_3, 0, -1, 0},
/*  4 */ { 15, s_0_4, 3, -1, 0},
/*  5 */ { 15, s_0_5, 3, -1, 0},
/*  6 */ { 12, s_0_6, 0, -1, 0},
/*  7 */ { 15, s_0_7, 6, -1, 0},
/*  8 */ { 15, s_0_8, 6, -1, 0},
/*  9 */ { 9, s_0_9, 0, -1, 0},
/* 10 */ { 9, s_0_10, 0, -1, 0},
/* 11 */ { 9, s_0_11, 0, -1, 0},
/* 12 */ { 12, s_0_12, 11, -1, 0},
/* 13 */ { 12, s_0_13, 11, -1, 0},
/* 14 */ { 9, s_0_14, 0, -1, 0},
/* 15 */ { 12, s_0_15, 14, -1, 0},
/* 16 */ { 12, s_0_16, 14, -1, 0},
/* 17 */ { 6, s_0_17, 0, -1, r_CONSONANT},
/* 18 */ { 9, s_0_18, 17, -1, 0},
/* 19 */ { 9, s_0_19, 17, -1, 0},
/* 20 */ { 9, s_0_20, 17, -1, 0},
/* 21 */ { 6, s_0_21, 0, -1, r_CONSONANT},
/* 22 */ { 9, s_0_22, 21, -1, 0},
/* 23 */ { 6, s_0_23, -1, -1, 0},
/* 24 */ { 6, s_0_24, -1, -1, 0},
/* 25 */ { 12, s_0_25, 24, -1, 0},
/* 26 */ { 15, s_0_26, 25, -1, 0},
/* 27 */ { 15, s_0_27, 25, -1, 0},
/* 28 */ { 12, s_0_28, 24, -1, 0},
/* 29 */ { 3, s_0_29, -1, -1, 0},
/* 30 */ { 6, s_0_30, -1, -1, 0},
/* 31 */ { 9, s_0_31, 30, -1, r_CONSONANT},
/* 32 */ { 12, s_0_32, 31, -1, 0},
/* 33 */ { 12, s_0_33, 31, -1, 0},
/* 34 */ { 12, s_0_34, 31, -1, 0},
/* 35 */ { 6, s_0_35, -1, -1, 0},
/* 36 */ { 9, s_0_36, 35, -1, 0},
/* 37 */ { 9, s_0_37, 35, -1, 0},
/* 38 */ { 6, s_0_38, -1, -1, 0},
/* 39 */ { 6, s_0_39, -1, -1, 0},
/* 40 */ { 9, s_0_40, 39, -1, 0},
/* 41 */ { 9, s_0_41, 39, -1, 0},
/* 42 */ { 6, s_0_42, -1, -1, 0},
/* 43 */ { 12, s_0_43, 42, -1, 0},
/* 44 */ { 15, s_0_44, 43, -1, 0},
/* 45 */ { 15, s_0_45, 43, -1, 0},
/* 46 */ { 12, s_0_46, 42, -1, 0},
/* 47 */ { 6, s_0_47, -1, -1, 0},
/* 48 */ { 9, s_0_48, 47, -1, 0},
/* 49 */ { 9, s_0_49, 47, -1, 0},
/* 50 */ { 9, s_0_50, 47, -1, 0},
/* 51 */ { 9, s_0_51, 47, -1, 0},
/* 52 */ { 12, s_0_52, 51, -1, r_CONSONANT},
/* 53 */ { 15, s_0_53, 52, -1, 0},
/* 54 */ { 12, s_0_54, 51, -1, r_CONSONANT},
/* 55 */ { 15, s_0_55, 54, -1, 0},
/* 56 */ { 6, s_0_56, -1, -1, 0},
/* 57 */ { 9, s_0_57, 56, -1, 0},
/* 58 */ { 9, s_0_58, 56, -1, 0},
/* 59 */ { 9, s_0_59, 56, -1, 0},
/* 60 */ { 9, s_0_60, 56, -1, 0},
/* 61 */ { 12, s_0_61, 60, -1, r_CONSONANT},
/* 62 */ { 15, s_0_62, 61, -1, 0},
/* 63 */ { 12, s_0_63, 60, -1, r_CONSONANT},
/* 64 */ { 15, s_0_64, 63, -1, 0},
/* 65 */ { 6, s_0_65, -1, -1, 0},
/* 66 */ { 12, s_0_66, 65, -1, 0},
/* 67 */ { 15, s_0_67, 66, -1, 0},
/* 68 */ { 15, s_0_68, 66, -1, 0},
/* 69 */ { 12, s_0_69, 65, -1, 0},
/* 70 */ { 3, s_0_70, -1, -1, 0},
/* 71 */ { 3, s_0_71, -1, -1, 0},
/* 72 */ { 3, s_0_72, -1, -1, 0},
/* 73 */ { 3, s_0_73, -1, -1, 0},
/* 74 */ { 3, s_0_74, -1, -1, 0},
/* 75 */ { 12, s_0_75, 74, -1, 0},
/* 76 */ { 12, s_0_76, 74, -1, 0},
/* 77 */ { 15, s_0_77, 76, -1, 0},
/* 78 */ { 15, s_0_78, 76, -1, 0},
/* 79 */ { 9, s_0_79, 74, -1, 0},
/* 80 */ { 9, s_0_80, 74, -1, 0},
/* 81 */ { 12, s_0_81, 80, -1, 0},
/* 82 */ { 12, s_0_82, 80, -1, 0},
/* 83 */ { 6, s_0_83, 74, -1, r_CONSONANT},
/* 84 */ { 9, s_0_84, 83, -1, 0},
/* 85 */ { 9, s_0_85, 83, -1, 0},
/* 86 */ { 9, s_0_86, 83, -1, 0},
/* 87 */ { 6, s_0_87, 74, -1, r_CONSONANT},
/* 88 */ { 9, s_0_88, 87, -1, 0},
/* 89 */ { 9, s_0_89, 87, -1, 0},
/* 90 */ { 9, s_0_90, 87, -1, 0},
/* 91 */ { 3, s_0_91, -1, -1, 0},
/* 92 */ { 6, s_0_92, 91, -1, 0},
/* 93 */ { 6, s_0_93, 91, -1, 0},
/* 94 */ { 3, s_0_94, -1, -1, 0},
/* 95 */ { 3, s_0_95, -1, -1, 0},
/* 96 */ { 3, s_0_96, -1, -1, 0},
/* 97 */ { 3, s_0_97, -1, -1, 0},
/* 98 */ { 3, s_0_98, -1, -1, 0},
/* 99 */ { 6, s_0_99, 98, -1, 0},
/*100 */ { 6, s_0_100, 98, -1, 0},
/*101 */ { 9, s_0_101, 100, -1, 0},
/*102 */ { 9, s_0_102, 100, -1, 0},
/*103 */ { 6, s_0_103, 98, -1, 0},
/*104 */ { 6, s_0_104, 98, -1, 0},
/*105 */ { 3, s_0_105, -1, -1, 0},
/*106 */ { 6, s_0_106, 105, -1, 0},
/*107 */ { 6, s_0_107, 105, -1, 0},
/*108 */ { 6, s_0_108, -1, -1, r_CONSONANT},
/*109 */ { 9, s_0_109, 108, -1, 0},
/*110 */ { 9, s_0_110, 108, -1, 0},
/*111 */ { 9, s_0_111, 108, -1, 0},
/*112 */ { 3, s_0_112, -1, -1, 0},
/*113 */ { 12, s_0_113, 112, -1, 0},
/*114 */ { 12, s_0_114, 112, -1, 0},
/*115 */ { 15, s_0_115, 114, -1, 0},
/*116 */ { 15, s_0_116, 114, -1, 0},
/*117 */ { 9, s_0_117, 112, -1, 0},
/*118 */ { 9, s_0_118, 112, -1, 0},
/*119 */ { 12, s_0_119, 118, -1, 0},
/*120 */ { 12, s_0_120, 118, -1, 0},
/*121 */ { 6, s_0_121, 112, -1, r_CONSONANT},
/*122 */ { 9, s_0_122, 121, -1, 0},
/*123 */ { 9, s_0_123, 121, -1, 0},
/*124 */ { 9, s_0_124, 121, -1, 0},
/*125 */ { 6, s_0_125, 112, -1, r_CONSONANT},
/*126 */ { 9, s_0_126, 125, -1, 0},
/*127 */ { 9, s_0_127, 125, -1, 0},
/*128 */ { 9, s_0_128, 125, -1, 0},
/*129 */ { 9, s_0_129, 112, -1, 0},
/*130 */ { 9, s_0_130, 112, -1, 0},
/*131 */ { 3, s_0_131, -1, -1, 0}
};

static const unsigned char g_consonant[] = { 255, 255, 255, 255, 159, 0, 0, 0, 248, 7 };


static int r_CONSONANT(struct SN_env * z) { /* backwardmode */
    if (in_grouping_b_U(z, g_consonant, 2325, 2399, 0)) return 0; /* grouping consonant, line 129 */
    return 1;
}

extern int hindi_UTF_8_stem(struct SN_env * z) { /* forwardmode */
    {   int c_test1 = z->c; /* test, line 132 */
        {   int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
            if (ret < 0) return 0;
            z->c = ret; /* next, line 132 */
        }
        z->I[0] = z->c; /* setmark p, line 132 */
        z->c = c_test1;
    }
    z->lb = z->c; z->c = z->l; /* backwards, line 133 */


    {   int mlimit2; /* setlimit, line 139 */
        if (z->c < z->I[0]) return 0;
        mlimit2 = z->lb; z->lb = z->I[0];
        z->ket = z->c; /* [, line 139 */
        if (!(find_among_b(z, a_0, 132))) { z->lb = mlimit2; return 0; } /* substring, line 139 */
        z->bra = z->c; /* ], line 139 */
        z->lb = mlimit2;
    }
    {   int ret = slice_del(z); /* delete, line 321 */
        if (ret < 0) return ret;
    }
    z->c = z->lb;
    return 1;
}

extern struct SN_env * hindi_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }

extern void hindi_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }

